﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using RegistroMascotas.Modelo;
using Service;

namespace RegistroMascotas
{
    public partial class busqueda_dueño : System.Web.UI.Page
    {
        protected void Page_Load(object sender, EventArgs e)
        {
            Mascota m = Session["Mascota"] as Mascota;

            if (!IsPostBack)
            {
                bienvenido.Text = "Bienvenido/a Dr/a. " + User.Identity.Name;
                cuentacentro.Visible = true;
                panelOculto.Visible = false;

                try
                {
                    
                }
                catch (Exception ex)
                {
                    cuentacentro.Visible = false;
                    lblNotificacion.Text = ex.Message;
                    lblNotificacion.CssClass = "errores";
                    panelOculto.Visible = true;
                }
            }
        }

        protected void asignarDueño_click(object sender,EventArgs e) {
            Dueño dueñoElegido = null;
            Mascota miMascota = (Mascota)Session["Mascota"];
            bool exito = false;

            try
            {
                Button btnDueño = (Button)sender;

                int id = int.Parse(btnDueño.CommandArgument);
                dueñoElegido = GestorDeBusqueda.obtenerDueñoPorId(id);

                //asignarlo a la mascota que guardamos
                miMascota.Dueño = dueñoElegido.IdPersona;

                exito = GestorMascota.crearMascota(miMascota);

                Session["Mascota"] = null;
                Session["Mascota"] = miMascota;

                if (exito) {
                    cuentacentro.Visible = false;
                    lblNotificacion.Text = "Su mascota y chapita han sido creadas con éxito.";
                    panelOculto.Visible = true;
                }                
            }
            catch (Exception ex)
            {
                cuentacentro.Visible = false;                
                lblNotificacion.Text = ex.Message;
                lblNotificacion.CssClass = "errores";
                panelOculto.Visible = true;
            }
        }

        protected void btnBuscar_Click(object sender, EventArgs e)
        {
            try 
	        {	        		       
                cargarDueños();
	        }
	        catch (Exception ex)
	        {
                cuentacentro.Visible = false;
                lblNotificacion.Text = ex.Message;
                lblNotificacion.CssClass = "errores";
                panelOculto.Visible = true;
	        }
        }

        private void cargarDueños(){
            //List<Dueño> listaDueño = null;
            List<Persona> listaPersona = null;
            try 
	        {	    
                gvBusqueda.DataSource = null;
                listaPersona = GestorDeBusqueda.buscaPorDniMatricula(long.Parse(txtBusqueda.Text));
                gvBusqueda.DataSource = listaPersona;
                gvBusqueda.DataBind();
	        }
	        catch (Exception ex)
	        {
                cuentacentro.Visible = false;
                lblNotificacion.Text = ex.Message;
                lblNotificacion.CssClass = "errores";
                panelOculto.Visible = true;
	        }
        }

        /*protected void btnAsignarChapita_Click(object sender, EventArgs e)
        {
            Mascota pet = (Mascota)Session["Mascota"];
            bool exito = false;

            try
            {
                exito = GestorMascota.crearChapita(pet);

                if (exito) {
                    cuentacentro.Visible = false;
                    lblNotificacion.Text = "Se ha peticionado la chapita con éxito.";
                    btnAsignarChapita.Visible = false;
                    panelOculto.Visible = true;
                }
            }
            catch (Exception ex)
            {
                cuentacentro.Visible = false;
                lblNotificacion.Text = ex.Message;
                lblNotificacion.CssClass = "errores";
                btnAsignarChapita.Visible = false;
                panelOculto.Visible = true;
            }
        }*/
    }    
}